public class Soldier {
    /*
    * 设计一个游戏系统，在该系统当中拥有战士 Soldier 角色；
    * 每个角色拥有自己的名字 name 、等级 level、生命力 hp ，攻击力 atk、防御力 def；
    * 战士都有 普通攻击 行为 attack，其实现为：根据自己的攻击力减去 被攻击对象的防御力 从而得到对方的失血量；

    设计这个系统中有哪些类、分别有什么属性、行为，有什么关联关系，并在main方法中调用查看效果。
    * */

    public String name;
    public int level;  // 等级
    public int hp; // 生命力
    public int atk; // 攻击力
    public int def; // 防御力

    public Soldier() {
    }

    public Soldier(String name, int level, int hp, int atk, int def) {
        this.name = name;
        this.level = level;
        this.hp = hp;
        this.atk = atk;
        this.def = def;
    }

    // 空手攻击
    public void attack(Soldier other) {
        int result = this.atk - other.def; // 掉血

    }

    // 携带武器
    public void attack(Soldier other, Weapon w) {
        int result = this.atk - +w.atk - other.def; // 掉血

    }


}
